import axios from 'axios'
import { defineNuxtPlugin } from '#app'

export default defineNuxtPlugin((nuxtApp) => {
  const request = axios.create({
    baseURL: 'https://api.indtrd.com', // 替换为你的 API 基础 URL
    timeout: 10000, // 请求超时时间
    headers: {
      'Content-Type': 'application/json',
      'X-Content-Override' : 1
    },
  })

  // 添加请求拦截器
  request.interceptors.request.use(
    (config) => {
      const accessToken = localStorage.getItem('accessToken') // 从本地获取 token
      if (accessToken) {
        config.headers.Authorization = `INDTRD  ${accessToken}` // 添加到请求头
      }
      return config
    },
    (error) => {
      return Promise.reject(error)
    }
  )

  // 添加响应拦截器
  request.interceptors.response.use(
    (response) => response.data,
    (error) => {
      return Promise.reject(error)
    }
  )

  // 将 request 实例添加到 Nuxt 应用中
  nuxtApp.provide('request', request)
}) 